The present invention relates generally to the field of communication systems and more specifically to systems for soft decoding data symbols in multiple input multiple output communication systems.
Decoding is used by receivers to correctly identify transmitted data symbols. During data transmission, noise from many sources may corrupt transmitted signals so that what is received is not necessarily what was transmitted. For example, a signal transmitted as a 1 may be corrupted by noise and thereafter misinterpreted as a 0 at the receiver. Accurate information transmission depends upon being able to reliably detect transmitted 1s as 1s and 0s as 0s.
One technique for transmitting data symbols is known as M-ary signaling. In M-ary signaling, the transmitter repeatedly selects one of M possible unique symbols to send to represent the data being sent. In many systems, M=2k for some integer k and thus each symbol represents k bits. BPSK (binary phase shift keying) is an example of transmitting with M=2; the symbols can be represented as 0 and 1. QPSK (quadrature phase shift keying) provides for four symbols where each symbol codes for two bits (representable as 00, 01, 10 and 11).
In more complex keying schemes (e.g. QPSK), the signal amplitude varies as well as the phase. A signaling constellation is a mapping of symbols to particular (amplitude, phase) pairs. For single transmit and receive antennas, the signaling constellation has constellation points corresponding to the total number of symbols available. For instance, in QPSK, each symbol 00, 01, 10 and 11 is uniquely identifiable by a constellation point in the signaling constellation. The problem of signal fading manifests itself as distortions of signaling constellations where some of the points move closer together. For example, point 00 may be misinterpreted as point 01. This causes errors at the receiver during the detection process, where a constellation point is misinterpreted as a different constellation point.
To facilitate correct interpretation of constellation points, soft decision decoders are employed at receivers for providing soft decisions. A “soft decision” is neither a 0 nor a 1 but a number in between that provides a degree of confidence as to whether the signal is a 0 or a 1. After soft decisions are made, the numbers are passed on to an apparatus or process that determines, from the context, whether the signals are 0 or 1. One such process is the well-known Viterbi algorithm.
A system where one transmitter is used to transmit the data to one receiver is referred to as a SISO (single input single output) system, whereas a system where more than one transmitter is used and more than one receiver is used is referred to as a MIMO (multiple input multiple output) system. MIMO systems have advantages, such as being able to overcome the information capacity of SISO systems, increasing data rate, and obtaining increased receiver sensitivity. However, SISO systems have an advantage of simpler constellations. Conventional soft symbol decoding techniques used for SISO systems are inapplicable to MIMO systems which have more complex constellations.
What is needed is a soft symbol decoding system that can reliably perform soft symbol decoding for MIMO systems.